Developer Documentation

QuickTime 4 API Documentation

QuickTime Music Architecture

| Previous | Chapter Contents | Chapter Top | Next |

Controller Event and Extended Controller Event

The controller event ( Figure 9 ) changes the value of a controller on a specified part. The extended controller event ( Figure 10 ) allows parts and controllers beyond the range of the standard controller event.

Figure 9 Controller event

Table 6 Contents of a controller event

controller event type First nibble value = 010X
Part Unique part identifier
Controller Controller to be applied to instrument
Value 8.8 bit fixed-point signed controller specific value

For a list of currently supported controller types see "Controller Numbers."

The part field contains the unique part identifier initially used during the TuneSetHeader call.

The controller bit field is a value that describes the type of controller used by the part.

The value bit field is specific to the selected controller.

Use this macro call to stuff the controller event's long word:

qtma_StuffControlEvent(x, instrument, control, value)

Use these macro calls to extract fields from the controller event's long word:

qtma_Instrument(x)
qtma_ControlController(x)
qtma_ControlValue(x)

Figure 10 Extended controller event

Table 7 Contents of an extended controller event

Extended controller type First nibble value = 1010
Part Instrument index for controller
Controller Controller for instrument
Value Signed controller specific value
Event tail First nibble of last word = 10XX

The part field contains the unique part identifier initially used during the TuneSetHeader call.

The controller bit field contains a value that describes the type of controller to be used by the part.

The value bit field is specific to the selected controller.

Use this macro call to stuff the extended controller event's long words:

_StuffXControlEvent(w1, w2, instrument, control, value)

Use these macro calls to extract fields from the extended controller event's long words:

qtma_XInstrument(m, l)
qtma_XControlController(m, l)
qtma_XControlValue(m, l)

© 1999 Apple Computer, Inc.

| Previous | Chapter Contents | Chapter Top | Next |